<?php
namespace app\value\enums;

/**
 * 示例：TestEnums
 */
enum TestEnums: string
{
    case STATUS_PENDING = 'pending';
    case STATUS_SUCCESS = 'success';
    case STATUS_FAIL = 'fail';

    /**
     * 获取所有枚举值
     * @return string[]
     */
    public static function values(): array
    {
        return array_map(fn($e) => $e->value, self::cases());
    }

    /**
     * 判断值是否合法
     */
    public static function isValid(string $value): bool
    {
        return in_array($value, self::values(), true);
    }
}